#include <iostream>
#include <stdio.h>
#include <string.h>
using namespace std;
bool ch[400][27];
bool dp[400][400];
char str[10007];
bool search(int i, char j) {
	if (j=='#') return ch[i][26];
	else return ch[i][j-'a'];
}
int main() {
	int N,M,Q;
	scanf("%d%d%d", &N, &M, &Q);
	memset(ch, 0, sizeof(ch));
	for (int i=1; i<=N; ++i) {
		scanf("%s", str);
		for (int j=0; j<M; ++j) {
			if (str[j]=='#') ch[i][26]=true;
			else {
				ch[i][str[j]-'a']=true;
			}
		}
//		for (int j=0; j<27; ++j) printf("%d%c", ch[i][j], (j==26? '\n': ' '));
	}
	for (int k=0; k<Q; ++k) {
		scanf("%s", str);
		int len=strlen(str);
		if (len>N) {
			printf("NO\n");
		}
		else {
			memset(dp, 0, sizeof(dp));
			dp[0][0]=true;
			for (int i=1; i<=N; ++i) {
				for (int j=0; j<=len&&j<=i; ++j) {
					if (j==0) dp[i][j]=true;
					else {
						dp[i][j]=( (dp[i-1][j-1]&&search(i, str[j-1])) || (dp[i-1][j]&&search(i, '#')) );
					}
				}
			}
//			for (int i=0; i<=N; ++i) {
//				for (int j=0; j<=len; ++j) {
//					printf("%d%c", dp[i][j], (j==len? '\n': ' '));
//				}
//			}
			if (dp[N][len]) printf("YES\n");
			else printf("NO\n");
		}
	}
	return 0;
}
